package com.ning.reggie.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ning.reggie.entity.Employee;
import org.apache.ibatis.annotations.Mapper;

/**
 * 员工Mapper接口，继承了MyBatis-Plus提供的BaseMapper。
 *
 * 此接口主要用于与数据库中的员工表进行交互，提供了对员工数据的各种数据库操作方法。
 */
@Mapper
public interface EmployeeMapper extends BaseMapper<Employee> {
    // 通过继承BaseMapper，自动获得了一系列通用的数据库操作方法，
    // 如插入、查询、更新、删除等基本操作，针对Employee实体类。
}

/*
在 MyBatis 和 Spring Boot 集成的环境中，@Mapper注解用于标识一个接口是 MyBatis 的 Mapper 接口。这个注解告诉 Spring 框架这个接口需要被扫描并创建代理对象来处理数据库操作。
当一个接口被标注为@Mapper后，Spring Boot 会在启动时自动扫描并注册这个接口，使其能够被注入到其他组件中使用。它通常用于简化 MyBatis 的配置，避免在 XML 配置文件中手动定义 Mapper 接口和 SQL 映射关系。
通过继承BaseMapper，这个接口可以直接使用 MyBatis Plus 提供的一系列通用数据库操作方法，如增删改查等，而无需手动编写 SQL 语句。这样可以大大提高开发效率，减少重复代码的编写。
 */
